name: Build Package

# Build package on its own without additional pip install

on:
  push:
    branches:
      - main
  pull_request:

env:
  POETRY_VERSION: "1.6.1"

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      # You can use PyPy versions in python-version.
      # For example, pypy-2.7 and pypy-3.8
      matrix:
        os: [ubuntu-latest, windows-latest]
        python-version: ["3.9"]
    steps:
      - uses: actions/checkout@v3
      - name: Set up python ${{ matrix.python-version }}
        uses: actions/setup-python@v4
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install Poetry
        uses: snok/install-poetry@v1
        with:
          version: ${{ env.POETRY_VERSION }}
      - name: Install deps
        shell: bash
        run: poetry install
      - name: Build
        shell: bash
        run: poetry build
      - name: Test installing built package
        shell: bash
        run: python -m pip install .
      - name: Test import
        shell: bash
        working-directory: ${{ vars.RUNNER_TEMP }}
        run: python -c "import llama_index"
